package com.yike.user.service;

import com.yike.common.pagination.Paging;
import com.yike.user.param.MachineParam;
import com.yike.user.param.PlatformMachineInfoParam;
import com.yike.user.param.PlatformMachinePageParam;
import com.yike.user.vo.PlatformMachineInfoVo;
import com.yike.user.vo.PlatformMachineVo;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * 平台设备 服务类
 *
 * @author Sakura
 * @since 2024-11-07
 */
public interface PlatformMachineService {

    boolean addMachine(MachineParam machineParam) throws Exception;

    boolean updateMachine(MachineParam machineParam) throws Exception;

    void exportTemplate(HttpServletRequest request, HttpServletResponse response) throws Exception;

    boolean importMachine(MultipartFile file) throws Exception;

    Paging<PlatformMachineVo> getPlatformMachineList(PlatformMachinePageParam platformMachinePageParam) throws Exception;

    PlatformMachineInfoVo getInfo(PlatformMachineInfoParam platformMachineInfoParam) throws Exception;

    PlatformMachineVo getPlatformMachine(Long id) throws Exception;

    boolean unbind(Long id) throws Exception;

    boolean delete(Long id) throws Exception;

}
